This invention relates to bandwidth assignment schemes for packet switching communications systems. In contrast to conventional circuit switched systems, in which an end-to-end link is maintained for the duration of a telephone call or the like, a packet switching system transmits information as a series of individual “packets” of data, each of which carries address data to allow it to be routed to its intended destination. The receiving terminal then reassembles the packets to retrieve the original message. Such arrangements make better use of the available bandwidth, but because of the variable delay in packet delivery are more suited to data than voice transmission.
U.S. Pat. No. 6,105,064 (Davis) describes a dynamic window sizing system which includes a process to estimate the overall bitrate required to maintain one or more datastreams, taking into account the average duration of gaps between packets in each datastream. However, the efficient use of the capacity reserved requires the transmission of the packets to be scheduled efficiently.
The achievable delay and utilisation performance of the channels of a packet switching system are governed by the underlying bandwidth assignment scheme. Satellite Medium Access Control (MAC) protocols for data traffic have traditionally employed Demand Assigned Multiple Access (DAMA) with requests for bandwidth made on a regular basis, derived from the instantaneous queue levels at the ground terminals. Thus any terminal having more than a predetermined number of packets awaiting delivery makes regular requests for bandwidth. As bandwidth becomes available one such terminal is selected for transmission of its next packet. Such a system is described, for example, by Mohamed and Le-Ngoc in a paper entitled “Performance Analysis of Combined/Free Demand Assigned Multiple Access (CFDAMA) Protocol for Packet Satellite Communications, (IEEE New Orleans, May 1994)
A typical satellite uplink frame format is shown in FIG. 1, consisting of a series of data transmission slots D, F interleaved with DAMA request slots R. A request algorithm for such a scheme is given in FIG. 3. Ground terminals 71 (see FIG. 6) make requests for bandwidth accompanying their uplink packet transmissions in the adjacent request slots, as and when required. At the time a packet is to be transmitted in one of the slots D (step 31) the terminal 71 determines its current packet queue size (step 32) and the number of slots already requested which have not yet been satisfied (step 33). If the queue size is greater than the number of slots already requested (because 35 further packets have been added to the queue since the previous packet was transmitted), it then transmits a request for further slots (step 34) based on the instantaneous ground terminal queue size and the number of outstanding slot requests (less the packet currently being transmitted). At the satellite 72, the scheduler 73 assigns slots on a frame-by-frame basis. In the first instance slots are demand-assigned to terminals based on requests queued at the scheduler in a first come first serve (FCFS) manner, with each terminal 71 being allocated a run of contiguous slots D based on the number of slots requested. In the absence of any queued requests, successive slots in the frame are allocated one-by-one on a free assigned round robin basis to all terminals in the system. To give terminals that have not requested bandwidth for a while a better chance of obtaining a free assigned slot, terminals are put to the bottom of the round-robin free assignment list subsequent to being allocated demand-assigned slots.
A geostationary satellite orbit is approximately 33,500 km above the earth's surface. For most points on the earth's surface the nearest geostationary satellite is not at the zenith, so the distance to the satellite is even greater—up to 40,000 km. The resulting long propagation delay in geo-stationary earth orbit (GEO) satellite links inhibits the effectiveness of such schemes. A “hop”, the propagation delay for transmission of a radio signal up to a satellite and back down to the ground, is about 0.25 seconds, but varies depending on the elevation angle to the satellite. The distance to the satellite is a minimum (about 0.24 seconds) when directly overhead an earth station at the equator, and it is a maximum (about 0.28 seconds) when an earth station is located at the edge of global coverage (from where the satellite is just above the horizon). Since a request for bandwidth has to be transmitted to the scheduler and the reply returned before a packet can be transmitted (which has itself then to be transmitted up to the satellite and back), each packet is delayed by at least two satellite hops (in addition to any processing delay) if the scheduler is located on the satellite, or more if it is on the ground, or distributed. In order to circumvent the long delay, DAMA is often combined with either random access (e.g. Slotted ALOHA) or a form of free assignment of bandwidth as found in the Combined Free/Demand Assignment Multiple Access (CFDAMA) schemes discussed by Le-Ngoc et al, in “Performance of combined free/demand assignment multiple-access schemes in satellite communications”, International Journal of Satellite Communications, vol. 14, no. 1, pp. 11-21, 1996. Leland et al, in “On the self-similar nature of Ethernet traffic (extended version)”, IEEE/ACM Transactions on Networking, vol. 2, no. 1, pp.1-15, 1994 describes how modern computer Local Area Network (LAN) traffic exhibits a burstiness characteristic over a wide range of time scales.
The present invention presents a novel packet reservation system for data traffic, suited to handling long bursts of packets from ON-OFF type traffic sources.
International patent specification WO03/017589 describes a demand assignment process for a packet switching communications system in which a terminal requests capacity from a scheduler for the transmission of bursts of packets, and in which the terminal transmits position signals to the scheduler with one or more of the packets, the position signals being indicative of those packets' positions in a burst. Such a position signal may indicate the end of a burst, or the beginning of a burst, the latter also including an indication of the length of the burst. The position signals are used by the scheduler to identify which terminals have transmitted part of a burst but have further packets of that burst awaiting transmission, and prioritises the allocation of capacity to those terminals to allow transmission of further packets of the partly transmitted burst. This system differs from prior art arrangements in that each terminal provides an indication of how the packets in its queue are arranged in bursts, and gives priority to transmission of packets to complete a burst that has already been partially transmitted, packets awaiting transmission that make up subsequent bursts are therefore given less significance in the allocation process.
The scheduler identifies, from the position signals transmitted by the terminals, whether any terminals are not part way through transmission of a burst, (that is to say, they have completed one burst and have not started another), and if there are any such terminals, the scheduler allocates capacity to allow those terminals to request transmission of new bursts should they require to do so. The proportions of the capacity allocated to allow such terminals to request capacity, and the capacity allocated to terminals already part way through a burst, may be varied according to the current number of terminals currently in each of those conditions.
However, in this prior art system, it is necessary that the transmitters are modified to provide the position signals, and the position signals themselves add to the signalling overhead to be carried. The scheduler must also be able to cope with corruption of the position signals.
The present invention provides an improved process in which there is provided a demand assignment process for a packet switching communications system in which a plurality of terminals each request capacity from a scheduler for the transmission of bursts of packets, and the scheduler identifies which terminals have transmitted part of a burst but have further packets of that burst awaiting transmission, and prioritises the allocation of capacity to those terminals to allow transmission of further packets of the partly transmitted burst, characterised in that the scheduler identifies the end of a burst by detecting gaps in transmission of data in excess of a predetermined duration.
The invention also extends to a scheduler for a packet switching communications system comprising allocation means for allocating capacity to a plurality of terminals for the transmission of bursts of packets, having means for determining which terminals have transmitted part of a burst but have further packets of that burst awaiting transmission, wherein the allocation means is arranged to prioritise the allocation of capacity to those terminals to allow transmission of further packets of the burst, and characterised in that the determination means comprises detection means for detecting gaps in transmission of data in excess of a predetermined duration.
Preferably the scheduler comprises means for setting or maintaining a flag at a first indication in respect of a terminal when the first packet of a burst is received from that terminal, and resetting the flag to a second indication when no packet has been received from that terminal for a predetermined period. Preferably the scheduler, having identified which of the terminals are not part way through transmission of a burst, allocates capacity to allow such terminals to request transmission of new bursts. The proportions of the capacity allocated to terminals not part way through a burst, and the capacity allocated to terminals already part way through a burst, may be varied according to the current number of terminals in each of those conditions.